﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Datos.Entidades;
using Logica.Comandos;
using Logica.Comandos.ComandosAdministracionParticipante;

namespace Logica.FabricaLogica
{
    public class FabricaComandoParticipante
    {

        /// <summary>
        /// Crea un participante con la información recibida como parámetro
        /// </summary>
        /// <param name="participante">Participante a crear</param>
        /// <returns>Comando para crear el participante</returns>
        public static Comando CrearComandoCrearParticipante(Entidad participante)
        {
            return new ComandoCrearParticipante(participante);
        }

        /// <summary>
        /// Eliminar Participante con la información recibida como parámetro
        /// </summary>
        /// <param name="participante">Participante a eliminar</param>
        /// <returns>Comando para  eliminar el Participante</returns>
        public static Comando CrearComandoEliminarParticipante(int idParticipante)
        {
            return new ComandoEliminarParticipante(idParticipante);
        }


        /// <summary>
        /// Lista Todos los Participante
        /// </summary>
        /// <returns>Comando para listar Participante</returns>
        public static Comando CrearComandoListarParticipante()
        {
            return new ComandoListarParticipante();
        }


        /// <summary>
        /// Buscar Participante
        /// </summary>
        /// <returns>Comando para buscar Participante</returns>
        public static Comando CrearComandoBuscarParticipante(int idParticipante)
        {
            return new ComandoBuscarParticipante (idParticipante);
        }

        /// <summary>
        /// Modificar Participante
        /// </summary>
        /// <returns>Comando para Modificar Participante</returns>
        public static Comando CrearComandoModificarParticipante(Entidad participante)
        {
            return new ComandoModificarParticipante(participante);
        }

    }
}
